68
|
I have a hierarchy and I need to filter only root items that match, with thier childs

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oColumn
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:LinesAtRoot := -1/*exLinesAtRoot*/
oComboBox:FilterInclude := 3/*exRootsWithChilds*/
oColumn := oComboBox:Columns():Add("Column")
oColumn:DisplayFilterButton := .T.
oColumn:FilterType := 240/*exFilter*/
oColumn:Filter := "R1"
oItems := oComboBox:Items()
h := oItems:AddItem("R1")
oItems:InsertItem(h,,"C1")
oItems:InsertItem(h,,"C2")
oItems:SetProperty("ExpandItem",h,.T.)
h := oItems:AddItem("R2")
oItems:InsertItem(h,,"C1")
oItems:InsertItem(h,,"C2")
oComboBox:ApplyFilter()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
66
|
I have a hierarchy and I need to filter only parent items that match, including thier childs

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oColumn
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:LinesAtRoot := -1/*exLinesAtRoot*/
oComboBox:FilterInclude := 1/*exItemsWithChilds*/
oColumn := oComboBox:Columns():Add("Column")
oColumn:DisplayFilterButton := .T.
oColumn:FilterType := 240/*exFilter*/
oColumn:Filter := "R1"
oItems := oComboBox:Items()
h := oItems:AddItem("R1")
oItems:InsertItem(h,,"C1")
oItems:InsertItem(h,,"C2")
oItems:SetProperty("ExpandItem",h,.T.)
h := oItems:AddItem("R2")
oItems:InsertItem(h,,"C1")
oItems:InsertItem(h,,"C2")
oComboBox:ApplyFilter()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
558
|
I do not like to specify the item padding for every column I add. The question is how can I do it automatically

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oColumn
LOCAL oColumns
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:BeginUpdate()
oComboBox:AttachTemplate("handle AddColumn(Column){Column{Def(48)=8;Def(49)=8;AllowDragging=False;AllowSizing = True}}")
oComboBox:HeaderAppearance := 4/*Etched*/
oComboBox:DrawGridLines := -1/*exAllLines*/
oComboBox:GridLineStyle := 32/*exGridLinesVSolid*/
oColumns := oComboBox:Columns()
oColumns:Add("Item")
oColumn := oColumns:Add("Pos")
oColumn:Position := 0
oColumn:Width := 32
oColumn:AllowSizing := .F.
oColumn:FormatColumn := "1 index ``"
oItems := oComboBox:Items()
oItems:AddItem("Item A")
oItems:AddItem("Item B")
oItems:AddItem("Item C")
oComboBox:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
472
|
I cannot seem to get autosearch=1 (contains) in the column object to search properly. It still only finds items that start with the typed character. I want to it look to see if the typed character(s) are contained in the item. I Can't seem to get this to work

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:BeginUpdate()
oComboBox:Style := 2/*DropDownList*/
oComboBox:HeaderVisible := .F.
oComboBox:AutoSearch := .T.
oComboBox:AutoDropDown := .T.
oComboBox:IntegralHeight := .T.
oComboBox:Columns():Add("Default"):AutoSearch := 1/*exContains*/
oItems := oComboBox:Items()
oItems:AddItem("This is a bit of text")
oItems:AddItem("This is a another text")
oComboBox:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
94
|
I can't scroll to the end of the data. What can I do

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems,oItems1,oItems2,oItems3
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:ScrollBySingleLine := .T.
oComboBox:DrawGridLines := -2/*exRowLines*/
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
oItems:SetProperty("ItemHeight",oItems:AddItem(0),13)
oComboBox:PutItems(oComboBox:GetItems(0))
oItems1 := oComboBox:Items()
oItems1:SetProperty("ItemHeight",oItems1:AddItem(1),26)
oComboBox:PutItems(oComboBox:GetItems(0))
oItems2 := oComboBox:Items()
oItems2:SetProperty("ItemHeight",oItems2:AddItem(2),36)
oComboBox:PutItems(oComboBox:GetItems(0))
oItems3 := oComboBox:Items()
oItems3:SetProperty("ItemHeight",oItems3:AddItem(3),48)
oComboBox:PutItems(oComboBox:GetItems(0))
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
469
|
I am using the ScrollWidth/ScrollHeight property on 0 to hide the control's scroll bars, the question is that the drop down button is disappearing. What can be done so I can still show the drop down button

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:BeginUpdate()
oComboBox:LabelHeight := 40
oComboBox:ScrollWidth := 0
oComboBox:ScrollHeight := 0
oComboBox:DropDownButtonWidth := 40
oComboBox:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
514
|
I am using filter prompt feature, and also column's filter, just wondering if possible to compact displaying the filter bar so it won't show on multiple lines

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oColumn,oColumn1
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:BeginUpdate()
oComboBox:Columns():Add("Item"):DisplayFilterButton := .T.
oColumn := oComboBox:Columns():Add("Pos")
oColumn:AllowSizing := .F.
oColumn:AllowSort := .F.
oColumn:Width := 32
oColumn:FormatColumn := "1 apos ``"
oColumn:Position := 0
oItems := oComboBox:Items()
oItems:AddItem("Item A")
oItems:AddItem("Item B")
oItems:AddItem("Item C")
oComboBox:FilterBarFont := oComboBox:Font()
oComboBox:FilterBarCaption := "`<r><i><fgcolor=808080><upline><solidline><sha ;;0>` + value"
oComboBox:FilterBarPromptPattern := "B"
oComboBox:FilterBarPromptVisible := 2067/*exFilterBarCompact+exFilterBarSingleLine+exFilterBarVisible+exFilterBarPromptVisible*/
oColumn1 := oComboBox:Columns:Item(0)
oColumn1:FilterType := 240/*exFilter*/
oColumn1:Filter := "Item A|Item B"
oComboBox:ApplyFilter()
oComboBox:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
550
|
I am calling Value to change the selected value, but the selection is not visible, unless I scroll to it

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL rs
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:BeginUpdate()
oComboBox:ColumnAutoResize := .F.
rs := CreateObject("ADODB.Recordset")
rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExComboBox\Sample\Access\sample.accdb",1/*adOpenKeyset*/,1/*adLockReadOnly*/)
oComboBox:DataSource := rs
oComboBox:Value := 10311
oItems := oComboBox:Items()
oItems:EnsureVisibleItem(oItems:FocusItem())
oComboBox:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
146
|
I've seen that you can change the visual appearance for the scroll bar. How can I do that

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:VisualAppearance():Add(1,"c:\exontrol\images\normal.ebn")
oComboBox:VisualAppearance():Add(2,"c:\exontrol\images\pushed.ebn")
oComboBox:VisualAppearance():Add(3,"c:\exontrol\images\hot.ebn")
oComboBox:SetProperty("Background",324/*exSBtn*/,0x1000000)
oComboBox:SetProperty("Background",325/*exSBtnP*/,0x2000000)
oComboBox:SetProperty("Background",327/*exSBtnH*/,0x3000000)
oComboBox:SetProperty("Background",404/*exHSBack*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oComboBox:SetProperty("Background",276/*exVSBack*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oComboBox:SetProperty("Background",511/*exScrollHoverAll+exDateScrollThumb*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oComboBox:Columns():Add("S"):Width := 32
oComboBox:Columns():Add("Level 1"):LevelKey := 1
oComboBox:Columns():Add("Level 2"):LevelKey := 1
oComboBox:Columns():Add("Level 3"):LevelKey := 1
oComboBox:Columns():Add("E1"):Width := 32
oComboBox:Columns():Add("E2"):Width := 32
oComboBox:Columns():Add("E3"):Width := 32
oComboBox:Columns():Add("E4"):Width := 32
oComboBox:ColumnAutoResize := .F.
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
119
|
I've seen that the width of the tooltip is variable. Can I make it larger

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:ToolTipWidth := 328
oComboBox:Columns():Add("tootip"):ToolTip := "this is a tooltip that should be very very very very very very very long"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
2
|
I've added a single column, but it is displayed only on a part of the control. Is there something I can do so the column will be fully displayed on the control

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("ColumnName")
oComboBox:Items():AddItem("Item 1")
oComboBox:Items():AddItem("Item 2")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
473
|
How would you clear the displayed selection for style DropDownList. So if a user selects or searches a value in a style DropDownList, I want to know if I can reset the control back to an empty selection

PROCEDURE OnDropUp(oComboBox)
oComboBox:Value := ""
RETURN
PROCEDURE OnSelectionChanged(oComboBox)
DevOut( "You selected: " )
DevOut( Transform(oComboBox:Value(),"") )
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:DropUp := {|| OnDropUp(oComboBox)} /*Occurs when the drop-down portion of the control is hidden.*/
oComboBox:SelectionChanged := {|| OnSelectionChanged(oComboBox)} /*Fired after a new item has been selected.*/
oComboBox:BeginUpdate()
oComboBox:Style := 2/*DropDownList*/
oComboBox:HeaderVisible := .F.
oComboBox:AutoSearch := .T.
oComboBox:AutoDropDown := .T.
oComboBox:IntegralHeight := .T.
oComboBox:Columns():Add("Default"):AutoSearch := 1/*exContains*/
oItems := oComboBox:Items()
oItems:AddItem("This is a bit of text")
oItems:AddItem("This is a another text")
oItems:DefaultItem := oItems:InsertItem(,,"")
oItems:SetProperty("ItemPosition",0,0)
oItems:SetProperty("SortableItem",0,.F.)
oComboBox:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
560
|
How I can programmatically select a row (with regular combobox I can set the ListIndex right up to Listcount -1)

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:BeginUpdate()
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oItems:AddItem("Item 3")
oItems:SetProperty("SelectItem",oItems:ItemByIndex(1),.T.)
oComboBox:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
561
|
How I can programmatically select a row (method 2)

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:BeginUpdate()
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oItems:AddItem("Item 3")
oComboBox:Value := "Item 2"
oComboBox:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
88
|
How do lock / fix some columns to the control, so I can see them all the time, event if I scroll the columns

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:CountLockedColumns := 1
oComboBox:SetProperty("BackColorLock",AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oComboBox:ColumnAutoResize := .F.
oComboBox:Columns():Add("Locked"):Width := 128
oComboBox:Columns():Add("Un-Locked 1"):Width := 128
oComboBox:Columns():Add("Un-Locked 2"):Width := 128
oComboBox:Columns():Add("Un-Locked 3"):Width := 128
oItems := oComboBox:Items()
oItems:SetProperty("CellCaption",oItems:AddItem("locked"),1,"unlocked")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
299
|
How do I vertically align a cell

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:DrawGridLines := -2/*exRowLines*/
oComboBox:Columns():Add("MultipleLine"):SetProperty("Def",16/*exCellSingleLine*/,.F.)
oComboBox:Columns():Add("VAlign")
oItems := oComboBox:Items()
h := oItems:AddItem("This is a bit of long text that should break the line")
oItems:SetProperty("CellCaption",h,1,"top")
oItems:SetProperty("CellVAlignment",h,1,0/*exTop*/)
h := oItems:AddItem("This is a bit of long text that should break the line")
oItems:SetProperty("CellCaption",h,1,"middle")
oItems:SetProperty("CellVAlignment",h,1,1/*exMiddle*/)
h := oItems:AddItem("This is a bit of long text that should break the line")
oItems:SetProperty("CellCaption",h,1,"bottom")
oItems:SetProperty("CellVAlignment",h,1,2/*exBottom*/)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
84
|
How do I use my own icons for my radio buttons

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
oComboBox:SetProperty("RadioImage",.F.,1)
oComboBox:SetProperty("RadioImage",.T.,2)
oComboBox:Columns():Add("Radio"):SetProperty("Def",1/*exCellHasRadioButton*/,.T.)
oItems := oComboBox:Items()
oItems:AddItem("Radio 1")
oItems:SetProperty("CellState",oItems:AddItem("Radio 2"),0,1)
oItems:AddItem("Radio 3")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
83
|
How do I use my own icons for checkbox cells

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
oComboBox:SetProperty("CheckImage",0/*Unchecked*/,1)
oComboBox:SetProperty("CheckImage",1/*Checked*/,2)
oComboBox:Columns():Add("Check"):SetProperty("Def",0/*exCellHasCheckBox*/,.T.)
oItems := oComboBox:Items()
oItems:AddItem("Check 1")
oItems:SetProperty("CellState",oItems:AddItem("Check 2"),0,1)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
479
|
How do I unselect/deselect the item (Simple style)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems,oItems1
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:BeginUpdate()
oComboBox:Style := 0/*Simple*/
oComboBox:Columns():Add("Def")
oItems := oComboBox:Items()
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oItems:AddItem("Item 3")
oItems:AddItem("Item 3")
oComboBox:SearchColumnIndex := 0
oComboBox:Value := "Item 2"
oItems1 := oComboBox:Items()
oItems1:SetProperty("SelectItem",oItems1:FocusItem(),.F.)
oComboBox:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
478
|
How do I unselect/deselect the item (DropDownList style)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems,oItems1
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:BeginUpdate()
oComboBox:Style := 1/*DropDown*/
oComboBox:Columns():Add("Def")
oItems := oComboBox:Items()
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oItems:AddItem("Item 3")
oItems:AddItem("Item 3")
oComboBox:SearchColumnIndex := 0
oComboBox:Value := "Item 2"
oItems1 := oComboBox:Items()
oItems1:SetProperty("SelectItem",oItems1:FocusItem(),.F.)
oComboBox:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
477
|
How do I unselect/deselect the item (DropDown style)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems,oItems1
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:BeginUpdate()
oComboBox:Style := 1/*DropDown*/
oComboBox:Columns():Add("Def")
oItems := oComboBox:Items()
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oItems:AddItem("Item 3")
oItems:AddItem("Item 3")
oComboBox:SearchColumnIndex := 0
oComboBox:Value := "Item 2"
oItems1 := oComboBox:Items()
oItems1:SetProperty("SelectItem",oItems1:FocusItem(),.F.)
oComboBox:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
288
|
How do I unselect an item

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
h := oItems:AddItem("Root 1")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ExpandItem",h,.T.)
oItems:SetProperty("SelectItem",h,.F.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
155
|
How do I underline the numbers greater than a value

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:ConditionalFormats():Add("%0 >= 10"):Underline := .T.
oComboBox:Columns():Add("Numbers")
oComboBox:Items():AddItem(1)
oComboBox:Items():AddItem(2)
oComboBox:Items():AddItem(10)
oComboBox:Items():AddItem(20)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
244
|
How do I underline an item

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
oItems:SetProperty("ItemUnderline",oItems:AddItem("underline"),.T.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
245
|
How do I underline a cell or an item

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
oItems:SetProperty("CellCaptionFormat",oItems:AddItem("gets <u>underline</u> only a portion of text"),0,1/*exHTML*/)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
246
|
How do I underline a cell

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
oItems:SetProperty("CellUnderline",oItems:AddItem("underline"),0,.T.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
325
|
How do I turn off the auto complete feature

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:AutoComplete := .F.
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
oItems:AddItem("Item 3")
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
328
|
How do I specify the width of the drop down window

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:SetProperty("WidthList",,100)
oComboBox:AllowSizeGrip := .T.
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
oItems:AddItem("Item 3")
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
327
|
How do I specify the minimum width of the drop down window

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:MinWidthList := 100
oComboBox:AllowSizeGrip := .T.
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
oItems:AddItem("Item 3")
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
329
|
How do I specify the minimum height of the drop down window

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:MinHeightList := 100
oComboBox:AllowSizeGrip := .T.
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
oItems:AddItem("Item 3")
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
92
|
How do I specify the indentation of the child items relative to their parents

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:LinesAtRoot := 1/*exGroupLinesAtRoot*/
oComboBox:Indent := 11
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
h := oItems:AddItem("Root 1")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ExpandItem",h,.T.)
h := oItems:AddItem("Root 2")
oItems:InsertItem(h,,"Child")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
330
|
How do I specify the height of the drop down window

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:SetProperty("HeightList",,400)
oComboBox:MinWidthList := 100
oComboBox:AllowSizeGrip := .T.
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
oItems:AddItem("Item 3")
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
338
|
How do I specify the height of the control's label

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:LabelHeight := 34
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
oItems:AddItem("Item 3")
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
93
|
How do I specify the column where the tree lines / hierarchy are shown

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:LinesAtRoot := 1/*exGroupLinesAtRoot*/
oComboBox:TreeColumnIndex := 1
oComboBox:Columns():Add("Column 1")
oComboBox:Columns():Add("Column 2")
oItems := oComboBox:Items()
h := oItems:AddItem("Root 1.1")
oItems:SetProperty("CellCaption",h,1,"Root 1.2")
oItems:SetProperty("CellCaption",oItems:InsertItem(h,,"Child 1.1"),1,"Child 1.2")
oItems:SetProperty("CellCaption",oItems:InsertItem(h,,"Child 2.1"),1,"Child 2.2")
oItems:SetProperty("ExpandItem",h,.T.)
h := oItems:AddItem("Root 2.1")
oItems:SetProperty("CellCaption",h,1,"Root 2.2")
oItems:SetProperty("CellCaption",oItems:InsertItem(h,,"Child 1.1"),1,"Child 1.2")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
483
|
How do I sort the index column as numeric

PROCEDURE OnInsertItem(oComboBox, Item)
LOCAL oItems
oItems := oComboBox:Items()
oItems:SetProperty("CellData",Item,1,oItems:ItemToIndex(Item))
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oColumn,oColumn1
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:InsertItem := {|Item| OnInsertItem(oComboBox, Item)} /*Occurs after a new item has been inserted to Items collection.*/
oComboBox:BeginUpdate()
oComboBox:DrawGridLines := -1/*exAllLines*/
oComboBox:ColumnAutoResize := .T.
oComboBox:ShowFocusRect := .F.
oComboBox:SingleEdit := .T.
oColumn := oComboBox:Columns():Add("Next")
oColumn:SetProperty("Def",48/*exCellPaddingLeft*/,4)
oColumn:SetProperty("Def",52/*exHeaderPaddingLeft*/,4)
oColumn1 := oComboBox:Columns():Add("Index")
oColumn1:AllowSizing := .F.
oColumn1:Width := 48
oColumn1:FormatColumn := "(((0 := (1 index ``)) mod 3) case ( default: ``; 0 : `<r><fgcolor=B0B0B0>`; 1: ``; 2 : `<c><fgcolor=808080>` )) + str(=:0)"
oColumn1:SetProperty("Def",17/*exCellCaptionFormat*/,1)
oColumn1:SortType := 5/*SortUserData*/
oColumn1:Position := 0
oItems := oComboBox:Items()
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oItems:AddItem("Item 3")
oItems:AddItem("Item 4")
oItems:AddItem("Item 5")
oItems:AddItem("Item 6")
oItems:AddItem("Item 7")
oItems:AddItem("Item 8")
oItems:AddItem("Item 9")
oItems:AddItem("Item 10")
oComboBox:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
229
|
How do I sort the child items

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
h := oItems:AddItem("Root")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ExpandItem",h,.T.)
oItems:SortChildren(h,0,.F.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
79
|
How do I sort descending a column, and put the sorting icon in the column's header

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oItems:AddItem("Item 3")
oComboBox:Columns:Item(0):SortOrder := 2/*SortDescending*/
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
78
|
How do I sort ascending a column, and put the sorting icon in the column's header

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
oItems:AddItem("Item 3")
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oComboBox:Columns:Item(0):SortOrder := 1/*SortAscending*/
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
72
|
How do I sort a column by numbers

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("desc"):SortType := 1/*SortNumeric*/
oItems := oComboBox:Items()
oItems:AddItem(1)
oItems:AddItem(5)
oItems:AddItem(10)
oItems:SortChildren(0,0,.F.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
116
|
How do I show the tooltip quicker

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:ToolTipDelay := 1
oComboBox:Columns():Add("tootip"):ToolTip := "this is a tooltip assigned to a column"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
181
|
How do I show or hide the sorting icons, but still need sorting

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Sorted"):SortOrder := 1/*SortAscending*/
oComboBox:Columns:Item(0):DisplaySortIcon := .F.
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
194
|
How do I show buttons for all cells in the column

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oColumn
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oColumn := oComboBox:Columns():Add("Button")
oColumn:SetProperty("Def",2/*exCellHasButton*/,.T.)
oColumn:SetProperty("Def",3/*exCellButtonAutoWidth*/,.T.)
oComboBox:Items():AddItem(" Button 1 ")
oComboBox:Items():AddItem(" Button 2 ")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
193
|
How do I show buttons for all cells in the column

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Button"):SetProperty("Def",2/*exCellHasButton*/,.T.)
oComboBox:Items():AddItem(0)
oComboBox:Items():AddItem(1)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
109
|
How do I show alternate rows in different background color

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:SetProperty("BackColorAlternate",AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oItems:AddItem("Item 3")
oItems:AddItem("Item 4")
oItems:AddItem("Item 5")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
559
|
How do I set an extra data for each item
PROCEDURE OnMouseMove(oComboBox, Button, Shift, X, Y)
LOCAL i
i := oComboBox:ItemFromPoint(-1,-1,c,hit)
DevOut( Transform(i,"") )
DevOut( Transform(oComboBox:Items:ItemData(i),"") )
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems,oItems1
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:MouseMove := {|Button, Shift, X, Y| OnMouseMove(oComboBox, Button, Shift, X, Y)} /*Occurs when the user moves the mouse.*/
oComboBox:BeginUpdate()
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
oItems:SetProperty("ItemData",oItems:AddItem("method 1"),"your extra data of method 1")
oItems:InsertItem(0,"your extra data of method 2","method 2")
oItems1 := oComboBox:Items()
oItems1:DefaultItem := oItems1:AddItem("method 3")
oItems1:SetProperty("ItemData",0,"your extra data of method 3")
oComboBox:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
286
|
How do I select an item

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
h := oItems:AddItem("Root 1")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ExpandItem",h,.T.)
oItems:SetProperty("SelectItem",h,.T.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
347
|
How do I select a value

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:IntegralHeight := .T.
oComboBox:LinesAtRoot := 1/*exGroupLinesAtRoot*/
oComboBox:TreeColumnIndex := 1
oComboBox:Columns():Add("Column 1")
oComboBox:Columns():Add("Column 2")
oItems := oComboBox:Items()
h := oItems:AddItem("Root 1.1")
oItems:SetProperty("CellCaption",h,1,"Root 1.2")
oItems:SetProperty("CellCaption",oItems:InsertItem(h,,"Child 1.1"),1,"Child 1.2")
oItems:SetProperty("CellCaption",oItems:InsertItem(h,,"Child 2.1"),1,"Child 2.2")
oItems:SetProperty("ExpandItem",h,.T.)
h := oItems:AddItem("Root 2.1")
oItems:SetProperty("CellCaption",h,1,"Root 2.2")
oItems:SetProperty("CellCaption",oItems:InsertItem(h,,"Child 1.1"),1,"Child 1.2")
oComboBox:SetProperty("Select",1,"Root 1.2")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
348
|
How do I select a value

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:IntegralHeight := .T.
oComboBox:LinesAtRoot := 1/*exGroupLinesAtRoot*/
oComboBox:TreeColumnIndex := 1
oComboBox:Columns():Add("Column 1")
oComboBox:Columns():Add("Column 2")
oItems := oComboBox:Items()
h := oItems:AddItem("Root 1.1")
oItems:SetProperty("CellCaption",h,1,"Root 1.2")
oItems:SetProperty("CellCaption",oItems:InsertItem(h,,"Child 1.1"),1,"Child 1.2")
oItems:SetProperty("CellCaption",oItems:InsertItem(h,,"Child 2.1"),1,"Child 2.2")
oItems:SetProperty("ExpandItem",h,.T.)
h := oItems:AddItem("Root 2.1")
oItems:SetProperty("CellCaption",h,1,"Root 2.2")
oItems:SetProperty("CellCaption",oItems:InsertItem(h,,"Child 1.1"),1,"Child 1.2")
oComboBox:Value := "Root 1.1"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
466
|
How do I select a NULL/empty value

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:BeginUpdate()
oComboBox:Style := 2/*DropDownList*/
oComboBox:Columns():Add("Items")
oItems := oComboBox:Items()
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oItems:AddItem("Item 3")
oItems:AddItem("Item 4")
oItems:DefaultItem := oItems:InsertItem(,,"")
oItems:SetProperty("ItemPosition",0,0)
oItems:SetProperty("SortableItem",0,.F.)
oComboBox:Value := ""
oComboBox:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
114
|
How do I search case sensitive, using your incremental search feature

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oColumns
LOCAL oItems,oItems1
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:AutoSearch := .T.
oComboBox:ASCIILower := ""
oColumns := oComboBox:Columns()
oColumns:Add("exStartWith"):AutoSearch := 0/*exStartWith*/
oColumns:Add("exContains"):AutoSearch := 1/*exContains*/
oItems := oComboBox:Items()
oItems:SetProperty("CellCaption",oItems:AddItem("text"),1,"another text")
oItems1 := oComboBox:Items()
oItems1:SetProperty("CellCaption",oItems1:AddItem("text"),1,"another text")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
262
|
How do I retrieve the focused item

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
h := oItems:AddItem("Root 1")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ExpandItem",h,.T.)
oItems:SetProperty("ItemBold",oItems:FocusItem(),.T.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
345
|
How do I remove the drop down's border

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:DropDownBorder := 0/*None2*/
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
69
|
How do I remove the control's border

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Appearance := 0/*None2*/
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
451
|
How do I prevent scrolling the control's data after user does the sort

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:EnsureOnSort := .F.
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
oItems:AddItem("Item 3")
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oComboBox:PutItems(oComboBox:GetItems(0))
oComboBox:PutItems(oComboBox:GetItems(0))
oComboBox:PutItems(oComboBox:GetItems(0))
oComboBox:Columns:Item(0):SortOrder := 1/*SortAscending*/
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
585
|
How do I prevent changing the cell's state ( check-box state )
PROCEDURE OnCellStateChanging(oComboBox, Cell, NewState)
LOCAL oItems
oItems := oComboBox:Items()
NewState := oItems:CellState(,Cell)
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oColumn,oColumn1
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:CellStateChanging := {|Cell, NewState| OnCellStateChanging(oComboBox, Cell, NewState)} /*Fired before cell's state is about to be changed.*/
oComboBox:BeginUpdate()
oComboBox:LinesAtRoot := -1/*exLinesAtRoot*/
oColumn := oComboBox:Columns():Add("P1")
oColumn:SetProperty("Def",0/*exCellHasCheckBox*/,.T.)
oColumn:PartialCheck := .T.
oColumn1 := oComboBox:Columns():Add("P2")
oColumn1:SetProperty("Def",0/*exCellHasCheckBox*/,.T.)
oColumn1:PartialCheck := .T.
oItems := oComboBox:Items()
h := oItems:AddItem("Root")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ExpandItem",h,.T.)
oComboBox:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
77
|
How do I perform my own/custom sort, using my extra strings

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("desc"):SortType := 5/*SortUserData*/
oItems := oComboBox:Items()
oItems:SetProperty("CellData",oItems:AddItem("A"),0,"C")
oItems:SetProperty("CellData",oItems:AddItem("B"),0,"B")
oItems:SetProperty("CellData",oItems:AddItem("C"),0,"A")
oItems:SortChildren(0,0,.F.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
76
|
How do I perform my own/custom sort, using my extra numbers

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("desc"):SortType := 5/*SortUserData*/
oItems := oComboBox:Items()
oItems:SetProperty("CellData",oItems:AddItem(0),0,2)
oItems:SetProperty("CellData",oItems:AddItem(1),0,1)
oItems:SetProperty("CellData",oItems:AddItem(2),0,0)
oItems:SortChildren(0,0,.F.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
82
|
How do I perform my own sorting when user clicks the column's header

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:SortOnClick := 1/*exUserSort*/
oComboBox:Columns():Add("Column")
oComboBox:Items():AddItem("Item 1")
oComboBox:Items():AddItem("Item 2")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
334
|
How do I lock or make read-only the control

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Locked := .T.
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
oItems:AddItem("Item 3")
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
331
|
How do I let user to resize the drop down window, at runtime

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:AllowSizeGrip := .T.
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
oItems:AddItem("Item 3")
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
332
|
How do I let user to resize only the width of the drop down window, at runtime

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:AllowSizeGrip := .T.
oComboBox:AllowVResize := .F.
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
oItems:AddItem("Item 3")
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
333
|
How do I let user to resize only the height of the drop down window, at runtime

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:AllowSizeGrip := .T.
oComboBox:AllowHResize := .F.
oComboBox:MinWidthList := 100
oComboBox:MinHeightList := 100
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
oItems:AddItem("Item 3")
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
117
|
How do I let the tooltip being displayed longer

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:ToolTipPopDelay := 10000
oComboBox:Columns():Add("tootip"):ToolTip := "this is a tooltip assigned to a column"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
153
|
How do I highlight in italic the numbers greater than a value

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:ConditionalFormats():Add("%0 >= 10"):Italic := .T.
oComboBox:Columns():Add("Numbers")
oComboBox:Items():AddItem(1)
oComboBox:Items():AddItem(2)
oComboBox:Items():AddItem(10)
oComboBox:Items():AddItem(20)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
154
|
How do I highlight in italic the numbers greater than a value

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:ConditionalFormats():Add("%0 >= 10"):StrikeOut := .T.
oComboBox:Columns():Add("Numbers")
oComboBox:Items():AddItem(1)
oComboBox:Items():AddItem(2)
oComboBox:Items():AddItem(10)
oComboBox:Items():AddItem(20)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
152
|
How do I highlight in bold the numbers greater than a value

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:ConditionalFormats():Add("%0 >= 10"):Bold := .T.
oComboBox:Columns():Add("Numbers")
oComboBox:Items():AddItem(1)
oComboBox:Items():AddItem(2)
oComboBox:Items():AddItem(10)
oComboBox:Items():AddItem(20)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
71
|
How do I hide the control's header bar

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:HeaderVisible := .F.
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
258
|
How do I get the parent item

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
h := oItems:AddItem("Root 1")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ExpandItem",h,.T.)
oItems:SetProperty("ItemBold",oItems:ItemParent(oItems:ItemChild(h)),.T.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
232
|
How do I get the number or count of items

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems,oItems1
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
h := oItems:AddItem("Root")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ExpandItem",h,.T.)
oItems1 := oComboBox:Items()
oItems1:AddItem(oItems1:ItemCount())
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
261
|
How do I get the number or count of child items

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
h := oItems:AddItem("Root 1")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ExpandItem",h,.T.)
oItems:AddItem(oItems:ChildCount(h))
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
339
|
How do I get the handle of the drop down window

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add(Transform(oComboBox:hWndDropDown(),""))
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
263
|
How do I get the handle of the cell

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
h := oItems:AddItem("Root 1")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ExpandItem",h,.T.)
oItems:SetProperty("CellBold",,oItems:ItemCell(h,0),.T.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
257
|
How do I get the first child item

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
h := oItems:AddItem("Root 1")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ExpandItem",h,.T.)
oItems:SetProperty("ItemBold",oItems:ItemChild(h),.T.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
486
|
How do I get sorted the column as string, numeric, date, date and time. Also how can it be applied to drop down filter panel

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oColumn,oColumn1,oColumn2,oColumn3,oColumn4
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:BeginUpdate()
oColumn := oComboBox:Columns():Add("Date")
oColumn:SortType := 2/*SortDate*/
oColumn:DisplayFilterButton := .T.
oColumn:DisplayFilterPattern := .F.
oColumn:DisplayFilterDate := .T.
oColumn:FilterList := 1296/*exShowFocusItem+exShowCheckBox+exSortItemsDesc*/
oColumn1 := oComboBox:Columns():Add("DateTime")
oColumn1:SortType := 3/*SortDateTime*/
oColumn1:DisplayFilterButton := .T.
oColumn1:DisplayFilterPattern := .F.
oColumn1:FilterList := 1296/*exShowFocusItem+exShowCheckBox+exSortItemsDesc*/
oColumn2 := oComboBox:Columns():Add("Time")
oColumn2:SortType := 4/*SortTime*/
oColumn2:DisplayFilterButton := .T.
oColumn2:DisplayFilterPattern := .F.
oColumn2:FilterList := 1296/*exShowFocusItem+exShowCheckBox+exSortItemsDesc*/
oColumn2:FormatColumn := "time(value)"
oColumn3 := oComboBox:Columns():Add("Numeric")
oColumn3:SortType := 1/*SortNumeric*/
oColumn3:DisplayFilterButton := .T.
oColumn3:FilterList := 1296/*exShowFocusItem+exShowCheckBox+exSortItemsDesc*/
oColumn4 := oComboBox:Columns():Add("String")
oColumn4:DisplayFilterButton := .T.
oColumn4:FilterList := 1296/*exShowFocusItem+exShowCheckBox+exSortItemsDesc*/
oItems := oComboBox:Items()
h := oItems:AddItem("01/27/2010")
oItems:SetProperty("CellCaption",h,1,"01/27/2010 10:00:00")
oItems:SetProperty("CellCaption",h,2,oItems:CellCaption(h,1))
oItems:SetProperty("CellCaption",h,3,1)
oItems:SetProperty("CellCaption",h,4,oItems:CellCaption(h,3))
h := oItems:AddItem("01/27/2011")
oItems:SetProperty("CellCaption",h,1,"01/27/2011 09:00:00")
oItems:SetProperty("CellCaption",h,2,oItems:CellCaption(h,1))
oItems:SetProperty("CellCaption",h,3,11)
oItems:SetProperty("CellCaption",h,4,oItems:CellCaption(h,3))
h := oItems:AddItem("11/02/2010")
oItems:SetProperty("CellCaption",h,1,"11/02/2010 09:00:00")
oItems:SetProperty("CellCaption",h,2,oItems:CellCaption(h,1))
oItems:SetProperty("CellCaption",h,3,2)
oItems:SetProperty("CellCaption",h,4,oItems:CellCaption(h,3))
oComboBox:Columns:Item("DateTime"):DisplayFilterDate := .F.
oComboBox:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
96
|
How do I get ride of the rectangle arround focused item

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:ShowFocusRect := .F.
oComboBox:Columns():Add("Column")
oComboBox:Items():AddItem(0)
oComboBox:Items():AddItem(1)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
470
|
How do I get notified once the user changes the Filter For field
PROCEDURE OnEditChange(oComboBox, ColIndex)
DevOut( "ColIndex: " )
DevOut( Transform(ColIndex,"") )
DevOut( "Label: " )
DevOut( oComboBox:EditText(0) )
DevOut( "FilterFor: " )
DevOut( oComboBox:EditText(-1) )
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:EditChange := {|ColIndex| OnEditChange(oComboBox, ColIndex)} /*Fired when the user has taken an action that may have altered text in an edit control.*/
oComboBox:BeginUpdate()
oComboBox:FilterForVisible := .T.
oComboBox:SetProperty("FilterForBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oComboBox:IntegralHeight := .T.
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oItems:AddItem("Item 3")
oItems:AddItem("Item 4")
oItems:AddItem("Item 5")
oComboBox:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
547
|
How do I get a list of interfaces the object implemenets

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL rs
LOCAL oPrivDBEngine
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:BeginUpdate()
oComboBox:ColumnAutoResize := .F.
oPrivDBEngine := CreateObject("DAO.DBEngine.120")
rs := oPrivDBEngine:OpenDatabase("C:\Program Files\Exontrol\ExComboBox\Sample\Access\sample.accdb"):OpenRecordset("Orders")
DevOut( CreateObject("Exontrol.PropertiesList"):Interfaces(rs):Interfaces(rs) )
oComboBox:DataSource := rs
oComboBox:Value := 10248
oComboBox:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
287
|
How do I find the selected item

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
h := oItems:AddItem("Root 1")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ExpandItem",h,.T.)
oItems:SetProperty("SelectItem",h,.T.)
oItems:SetProperty("ItemBold",oItems:SelectedItem(0),.T.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
294
|
How do I find the index of the item based on its handle

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
h := oItems:AddItem("Root 1")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ExpandItem",h,.T.)
oItems:SetProperty("ItemBold",oItems:ItemByIndex(oItems:ItemToIndex(h)),.T.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
293
|
How do I find the handle of the item based on its index

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
h := oItems:AddItem("Root 1")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ExpandItem",h,.T.)
oItems:SetProperty("ItemBold",oItems:ItemByIndex(1),.T.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
297
|
How do I find an item based on a path

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
h := oItems:AddItem("Root 1")
oItems:InsertItem(h,,"Child 1")
oItems:SetProperty("ItemData",oItems:InsertItem(h,,"Child 2"),1234)
oItems:SetProperty("ExpandItem",h,.T.)
oItems:SetProperty("ItemBold",oItems:FindPath("Root 1\Child 1"),.T.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
296
|
How do I find an item

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
h := oItems:AddItem("Root 1")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ExpandItem",h,.T.)
oItems:SetProperty("ItemBold",oItems:FindItem("Child 2",0),.T.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
107
|
How do I filter programatically the control

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oColumn
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oColumn := oComboBox:Columns():Add("Column")
oColumn:DisplayFilterButton := .T.
oColumn:FilterType := 3/*exPattern*/
oColumn:Filter := "Item*"
oComboBox:Items():AddItem("Item 1")
oComboBox:Items():AddItem("")
oComboBox:Items():AddItem("Item 2")
oComboBox:ApplyFilter()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
63
|
How do I filter for items that match exactly the specified string

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oColumn
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oColumn := oComboBox:Columns():Add("Column")
oColumn:DisplayFilterButton := .T.
oColumn:FilterType := 240/*exFilter*/
oColumn:Filter := "Item 1"
oComboBox:Items():AddItem("Item 1")
oComboBox:Items():AddItem("Item 2")
oComboBox:Items():AddItem("Item 3")
oComboBox:ApplyFilter()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
234
|
How do I expand or collapse an item

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
h := oItems:AddItem("Root")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ExpandItem",h,.T.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
123
|
How do I expand automatically the items while user types characters to searching for something ( incremental searching )

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:ExpandOnSearch := .T.
oComboBox:LinesAtRoot := -1/*exLinesAtRoot*/
oComboBox:AutoSearch := .T.
oComboBox:Columns():Add("Column"):AutoSearch := 1/*exContains*/
oItems := oComboBox:Items()
oItems:InsertItem(oItems:InsertItem(oItems:AddItem("text"),,"some text"),,"another text")
oItems:InsertItem(oItems:InsertItem(oItems:AddItem("text"),,"some text"),,"another text")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
260
|
How do I enumerate the visible items

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
h := oItems:AddItem("Root 1")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ExpandItem",h,.T.)
h := oItems:AddItem("Root 2")
oItems:SetProperty("ItemBold",oItems:FirstVisibleItem(),.T.)
oItems:SetProperty("ItemBold",oItems:NextVisibleItem(oItems:FirstVisibleItem()),.T.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
259
|
How do I enumerate the siblings items

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
h := oItems:AddItem("Root 1")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ExpandItem",h,.T.)
h := oItems:AddItem("Root 2")
oItems:SetProperty("ItemBold",oItems:NextSiblingItem(oItems:FirstVisibleItem()),.T.)
oItems:SetProperty("ItemBold",oItems:PrevSiblingItem(oItems:NextSiblingItem(oItems:FirstVisibleItem())),.T.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
256
|
How do I enumerate the root items

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("Default")
oItems := oComboBox:Items()
h := oItems:AddItem("Root 1")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ExpandItem",h,.T.)
h := oItems:AddItem("Root 2")
oItems:InsertItem(h,,"Child 1")
oItems:InsertItem(h,,"Child 2")
oItems:SetProperty("ItemBold",oItems:RootItem(0),.T.)
oItems:SetProperty("ItemUnderline",oItems:RootItem(1),.T.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
40
|
How do I ensure that the focused item is visible, after the user does the sort

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:EnsureOnSort := .T.
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
oItems:AddItem("Item 3")
oItems:AddItem("Item 1")
oItems:AddItem("Item 2")
oComboBox:PutItems(oComboBox:GetItems(0))
oComboBox:PutItems(oComboBox:GetItems(0))
oComboBox:PutItems(oComboBox:GetItems(0))
oComboBox:Columns:Item(0):SortOrder := 1/*SortAscending*/
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
108
|
How do I enlarge the drop down filter window

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oColumn
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:FilterBarDropDownHeight := "-320"
oColumn := oComboBox:Columns():Add("Column")
oColumn:DisplayFilterButton := .T.
oColumn:FilterBarDropDownWidth := "-320"
oComboBox:Items():AddItem("Item 1")
oComboBox:Items():AddItem("Item 2")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
165
|
How do I enlarge or change the size of the control's scrollbars

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:ScrollHeight := 18
oComboBox:ScrollWidth := 18
oComboBox:ScrollButtonWidth := 18
oComboBox:ScrollButtonHeight := 18
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
112
|
How do I enable the incremental search feature within a column

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oColumns
LOCAL oItems,oItems1
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:AutoSearch := .T.
oColumns := oComboBox:Columns()
oColumns:Add("exStartWith"):AutoSearch := 0/*exStartWith*/
oColumns:Add("exContains"):AutoSearch := 1/*exContains*/
oItems := oComboBox:Items()
oItems:SetProperty("CellCaption",oItems:AddItem("text"),1,"another text")
oItems1 := oComboBox:Items()
oItems1:SetProperty("CellCaption",oItems1:AddItem("text"),1,"another text")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
138
|
How do I enable resizing the columns at runtime

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems,oItems1
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:ColumnsAllowSizing := .T.
oComboBox:MarkSearchColumn := .F.
oComboBox:HeaderVisible := .F.
oComboBox:Columns():Add("Column 1")
oComboBox:Columns():Add("Column 2")
oComboBox:DrawGridLines := 2/*exVLines*/
oItems := oComboBox:Items()
oItems:SetProperty("CellCaption",oItems:AddItem("Item 1"),1,"Sub Item 1")
oItems1 := oComboBox:Items()
oItems1:SetProperty("CellCaption",oItems1:AddItem("Item 2"),1,"Sub Item 2")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
351
|
How do I enable resizing all the items at runtime

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:ItemsAllowSizing := 1/*exResizeAllItems*/
oComboBox:DrawGridLines := 1/*exHLines*/
oComboBox:Columns():Add("Column")
oComboBox:Items():AddItem("Item 1")
oItems := oComboBox:Items()
oItems:SetProperty("ItemHeight",oItems:AddItem("Item 2"),48)
oComboBox:Items():AddItem("Item 3")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
137
|
How do I enable resizing ( changing the height ) the items at runtime

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:ItemsAllowSizing := -1/*exResizeItem*/
oComboBox:ScrollBySingleLine := .T.
oComboBox:Columns():Add("Column")
oComboBox:Items():AddItem("Item 1")
oItems := oComboBox:Items()
oItems:SetProperty("ItemHeight",oItems:AddItem("Item 2"),48)
oComboBox:Items():AddItem("Item 3")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
180
|
How do I enable or disable the entire column

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems,oItems1
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("C1")
oComboBox:Columns():Add("Disabled"):Enabled := .F.
oItems := oComboBox:Items()
oItems:SetProperty("CellCaption",oItems:AddItem(0),1,"0.1")
oItems1 := oComboBox:Items()
oItems1:SetProperty("CellCaption",oItems1:AddItem(1),1,"1.1")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
268
|
How do I enable or disable a cell

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Columns():Add("C1")
oComboBox:Columns():Add("C2")
oItems := oComboBox:Items()
h := oItems:AddItem("Cell 1")
oItems:SetProperty("CellCaption",h,1,"Cell 2")
oItems:SetProperty("CellEnabled",h,1,.F.)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
553
|
How do I display the position of the item with 0-padding

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:BeginUpdate()
oComboBox:Columns():Add("Items"):FormatColumn := "((1 apos ``) lpad `00`) + `. ` + value"
oItems := oComboBox:Items()
oItems:AddItem("Item A")
oItems:AddItem("Item B")
oItems:AddItem("Item C")
oItems:AddItem("Item D")
oComboBox:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
349
|
How do I display the icons being selected in the control's label

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oComboBox
LOCAL oItems
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oComboBox := XbpActiveXControl():new( oForm:drawingArea )
oComboBox:CLSID := "Exontrol.ComboBox.1" /*{CF170E7A-4391-44BD-8D93-29F8D2801EF7}*/
oComboBox:create(,, {10,60},{610,370} )
oComboBox:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
oComboBox:Columns():Add("Column")
oItems := oComboBox:Items()
oItems:SetProperty("CellImage",oItems:AddItem("Image 1"),0,1)
oItems:SetProperty("CellImage",oItems:AddItem("Image 2"),0,2)
oItems:SetProperty("CellImage",oItems:AddItem("Image 3"),0,3)
oComboBox:SetProperty("AssignEditImageOnSelect",0,.T.)
oComboBox:Value := "Image 2"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|